#ifndef CHARACTER_H
#define CHARACTER_H

#include <windows.h>
#include <cmath>

class Bitmap;

class Character
{
public:
	Character(HDC _hDC, int _x, int _y);
	~Character();

	void MoveToGoal();
	void SetGoal(int _goalX, int _goalY);
	void SetSpeed(int _speed) { m_speed = _speed; }
	int GetSpeed() const { return m_speed; }
	int GetX() const { return m_x; }
	int GetY() const { return m_y; }
	void ResetGoal() { m_reached = false; }
	void Draw(HDC _hDC);
	bool HasReachedGoal() const { return m_reached; }
private:
	float ComputeDistanceToGoal();

	Bitmap* m_img;
	int m_goalX;
	int m_goalY;
	int m_x;
	int m_y;
	int m_speed;
	bool m_reached;
};

#endif